home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Atari Mega Archive 1
/
Atari Mega Archive - Volume 1.iso
/
program
/
gemxx19.zoo
/
gem++19
/
man
/
gemuo.man
< prev
next >
Wrap
Text File
|
1993-05-04
|
2KB
|
72 lines
GEM++ - C++ LIBRARIES FOR GEM/AES/VDI
NAME
GEMuserobject - GEMobject with user-defined graphic representation
DESCRIPTION
GEM provides a range of buttons with various borders, etc.
For whatever reason, the programmer may wish to define new graphics
for objects.
This is an abstract class, since the actual drawing function is
not defined. A derived class, GEMvdiobject, provides a higher-
level interface.
CONSTRUCTORS
GEMuserobject(GEMform&, int RSCindex)
As per GEMobject
PROTECTED METHODS
********************************************************************
NOTE: Draw() and Change() MUST NOT CALL ANY AES FUNCTIONS. THEY MAY
CALL GEMDOS, BIOS, XBIOS, AND VDI FUNCTIONS.
Some GEM++ methods call AES functions, most notably
GEMobject::GetAbsoluteXY().
********************************************************************
virtual void Draw(const PARMBLK* p)=0
Draw the area defined in the PARMBLK. This methods should draw
the object at (p->pb_x,p->pb_y), clipped to p->pb_?c. See gemfast.h
for the definition of PARMBLK.
virtual void Change(const PARMBLK*)
Simply calls Draw - derived classes could behave more cleverly,
such as the way the AES merely inverts areas rather than redrawing
when items are selected.
virtual int Type()
virtual int ObjectSpecific()
virtual void Type(int)
virtual void ObjectSpecific(int)
Note that this class overrides these function in such a way that
the original object type and object-specific data remains intact.
This means that a derived class may be defined that changes the
way the type looks, but still allows the fields of the object to
be accessed as usual - such as the text of a string object.
SEE ALSO
GEMvdiobject
BUGS
Bugs in GEM++ should be reported to warwick@cs.uq.oz.au
AUTHOR
Warwick Allison, 1993.
warwick@cs.uq.oz.au
COPYING
This functionality is part of the GEM++ library,
and is Copyright 1993 by Warwick W. Allison.
GEM++ is free and protected under the GNU Library General Public
License.
You are free to copy and modify these sources, provided you
acknowledge the origin by retaining this notice, and adhere to
the conditions described in the GNU LGPL.